/**
 * 
 */
package fr.gfi.agraf.persistence.dao.impl;

import java.util.List;

import javax.persistence.NoResultException;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Repository;

import fr.gfi.agraf.persistence.dao.ISaisieDAO;
import fr.gfi.agraf.persistence.entity.Saisie;
import fr.gfi.agraf.utils.PropertiesUtils;

/**
 * @author Zakaria
 *
 */
@Repository
public class SaisieDAO extends AbstractGenericDAO<Saisie> implements ISaisieDAO {

	private static final String ID_SAISIES = "idSaisies";
	private static final String HQL_SAISIE_DELETE_BY_IDS = "hql.saisie.deleteByIds";
	/**
	 * Logger
	 */
	private final static Logger LOGGER = Logger.getLogger(SaisieDAO.class);

	/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * fr.gfi.agraf.persistence.dao.ISaisieDAO#supprimerSaisieByIds(java.util
	 * .List)
	 */
	public int supprimerSaisieByIds(final List<Long> idSaisieList) {
		// Récupere la requete dans le fichier properties
		final String query = PropertiesUtils.getProperty(HQL_SAISIE_DELETE_BY_IDS);
		int rows = 0;
		try {
			// Execute la query
			rows = em.createQuery(query).setParameter(ID_SAISIES, idSaisieList).executeUpdate();
		} catch (final NoResultException e) {
			LOGGER.error(e);
		}
		return rows;
	}

}
